home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
C/C++ Users Group Library 1996 July
/
C-C++ Users Group Library July 1996.iso
/
listings
/
v_12_02
/
smith
/
baz.h
< prev
next >
Wrap
Text File
|
1993-12-29
|
2KB
|
52 lines
/* BAZ.H
* Contributed to Public Domain 9/93
* by Thad Smith, Boulder Co.
*/
/* External interfaces */
typedef enum { /* decoder return status: */
DECR_OK, /* normal return */
DECR_NO_ENDMARK, /* no end marker on data */
DECR_INVALID_DATA, /* invalid input data */
DECR_CRC_ERR, /* CRC error */
DECR_END /* decoding complete */
} decode_stat;
/* Output function type */
typedef int outf_t (const char *out, size_t len);
int
ebaz_init ( /* Initialize encoder */
int p_width, /* width of output lines */
outf_t * p_outfunc); /* function taking output */
int
ebaz_data ( /* Encode data block */
const unsigned char *data, /* input data */
size_t len); /* length of data or 0=end */
int
dbaz_init ( /* Initialize encoder */
outf_t * p_outfunc); /* function taking output */
decode_stat
dbaz_data ( /* Decode data block */
const unsigned char *data, /* input data */
size_t len); /* length of data or 0=end */
/** Return number of characters in internal buffer.
* This can be used after DECR_END status is returned
* to determine the number of unused characters given
* to the decoder. */
size_t dbaz_excess_chars (void);
void
encode_9_to_11 ( /* Basic block encoder */
char out[11], const unsigned char in[9]);
int /* return: 0=OK, 1= invalid input */
decode_11_to_9 ( /* Basic block decoder */
unsigned char out[9], const char in[11]);
/* End of File */